Attributes and the LOAD/UNLOAD Statements

The LOAD statement permenantly or temporarily loads a specified quantity of entities on to a base entity. Temporary loaded entities retain their identity for future unloading through an UNLOAD statement. See Load and Unload for more information. When the entities are temporarily loaded onto the a base entity, the resulting entity retains the attribute value of the base entity.

For example, entities called Box are temporarily loaded onto a base entity, Pallet. The Boxes are assigned an attribute value, Att1=1. Pallets are also assigned an attribute value, Att1=2. Once the Boxes are loaded onto the Pallet, the loaded pallet is renamed Shipment. The Shipment then has an attribute, Att1=2, because it inherits the attribute value of the Pallet. However, we then assign an attribute value to Shipment, Att1=3. After the Boxes are unloaded from the Shipment, the unloaded shipment is renamed back to Pallet and the Boxes retain their original attribute value, Att1=1. Now the Pallet has a different attribute value, Att1=3, which was assigned to the renamed entity, Shipment. Consider the following diagram and logic in which two Boxes are loaded onto a Pallet and renamed Shipment for the output entity:

The logic for the diagram is as follows:

Process Table

Entity

Location

Operation (min)

Box

Loc1

Att1 = 1

WAIT 2 min

Pallet

Loc2

Att1 = 2

LOAD 2

Shipment

Loc3

Att1 = 3

WAIT 20

Shipment

Loc4

UNLOAD 2

Box

Loc4

WAIT 10

Routing Table

Blk

Output

Destination

Rule

Move Logic

1

Box

Loc2

LOAD 1

MOVE FOR 1

1

Shipment

Loc3

FIRST 1

MOVE FOR 3

1

Shipment

Loc4

FIRST 1

MOVE FOR .5

1

Pallet

Loc5

FIRST 1

MOVE FOR 1

1

Box

Loc5

FIRST 1

MOVE FOR 2